<!DOCTYPE html>
<html lang="de">
<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>SEO Report July</title>
  <style>
    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Inter', system-ui, sans-serif;
      line-height: 1.7;
      color: #1a1a1a;
      background-color: #fafafa;
      font-size: 16px;
      font-weight: 400;
    }

    article {
      max-width: 800px;
      margin: 40px auto;
      background: #ffffff;
      border: 1px solid #e5e5e5;
      border-radius: 8px;
      overflow: hidden;
    }

    header {
      background: #ffffff;
      border-bottom: 1px solid #e5e5e5;
      padding: 48px 40px 32px 40px;
      text-align: center;
    }

    h1 {
      font-size: 32px;
      font-weight: 600;
      color: #0a0a0a;
      letter-spacing: -0.02em;
      margin: 0;
    }

    h2 {
      font-size: 20px;
      font-weight: 600;
      color: #0a0a0a;
      margin: 48px 0 16px 0;
      padding: 0 40px;
      letter-spacing: -0.01em;
    }

    h2:first-of-type {
      margin-top: 32px;
    }

    h3 {
      font-size: 16px;
      font-weight: 600;
      color: #333333;
      margin: 32px 0 12px 0;
      padding: 0 40px;
    }

    section {
      margin-bottom: 0;
    }

    section > section {
      margin: 24px 0;
      padding: 0 40px;
    }

    p {
      margin: 12px 0;
      padding: 0 40px;
      color: #4a4a4a;
      line-height: 1.6;
    }

    ul {
      margin: 16px 0;
      padding: 0 40px 0 64px;
      list-style: none;
    }

    li {
      margin: 8px 0;
      color: #4a4a4a;
      line-height: 1.6;
      position: relative;
    }

    li::before {
      content: "•";
      color: #999999;
      position: absolute;
      left: -16px;
      font-weight: 600;
    }

    a {
      color: #0066cc;
      text-decoration: none;
      font-weight: 500;
    }

    a:hover {
      color: #0052a3;
      text-decoration: underline;
    }

    strong {
      color: #1a1a1a;
      font-weight: 600;
    }


    /* Last section styling */
    section:last-child {
      padding-bottom: 40px;
    }

    /* Responsive design */
    @media (max-width: 768px) {
      body {
        font-size: 15px;
      }
      
      article {
        margin: 20px;
        border-radius: 6px;
      }
      
      header {
        padding: 32px 24px 24px 24px;
      }
      
      h1 {
        font-size: 28px;
      }
      
      h2 {
        font-size: 18px;
        padding: 0 24px;
        margin: 32px 0 12px 0;
      }
      
      h3 {
        font-size: 15px;
        padding: 0 24px;
        margin: 24px 0 8px 0;
      }
      
      p {
        padding: 0 24px;
      }
      
      ul {
        padding: 0 24px 0 48px;
      }
      
      section > section {
        padding: 0 24px;
      }
      
      section:not(:last-child) {
        padding-bottom: 24px;
      }
      
      section:last-child {
        padding-bottom: 32px;
      }
    }

    @media (max-width: 480px) {
      article {
        margin: 16px;
      }
      
      header {
        padding: 24px 20px 20px 20px;
      }
      
      h1 {
        font-size: 24px;
      }
      
      h2, h3, p {
        padding-left: 20px;
        padding-right: 20px;
      }
      
      ul {
        padding: 0 20px 0 40px;
      }
      
      section > section {
        padding: 0 20px;
      }
    }
  </style>
</head>
<body>
<article aria-label="Report Content">
  <header>
    <h1 id="project-name">TaskFlow Pro - Project Management API</h1>
  </header>
  <section aria-labelledby="version" id="section-version">
    <h2 id="version">Version</h2>
    <p>2.4.1</p>
  </section>
  <section aria-labelledby="release-date" id="section-release-date">
    <h2 id="release-date">Release Date</h2>
    <p>2025-07-15</p>
  </section>
  <section aria-labelledby="overview" id="section-overview">
    <h2 id="overview">Overview</h2>
    <p>A comprehensive REST API for managing projects, tasks, and team collaboration with real-time updates and advanced reporting capabilities.</p>
  </section>
  <section aria-labelledby="system-requirements" id="section-system-requirements">
    <h2 id="system-requirements">System Requirements</h2>
    <section aria-labelledby="minimum-requirements" id="section-minimum-requirements">
      <h3 id="minimum-requirements">Minimum Requirements</h3>
      <section aria-labelledby="operating-system" id="section-operating-system">
        <h4 id="operating-system">Operating System</h4>
        <ul>
          <li>Windows 10</li>
          <li>macOS 12.0</li>
          <li>Ubuntu 20.04 LTS</li>
        </ul>
      </section>
      <section aria-labelledby="memory" id="section-memory">
        <h4 id="memory">Memory</h4>
        <p>8GB RAM minimum</p>
      </section>
      <section aria-labelledby="storage" id="section-storage">
        <h4 id="storage">Storage</h4>
        <p>2GB available disk space</p>
      </section>
      <section aria-labelledby="network" id="section-network">
        <h4 id="network">Network</h4>
        <p>Stable internet connection required</p>
      </section>
    </section>
    <section aria-labelledby="recommended-requirements" id="section-recommended-requirements">
      <h3 id="recommended-requirements">Recommended Requirements</h3>
      <section aria-labelledby="operating-system-1" id="section-operating-system-1">
        <h4 id="operating-system-1">Operating System</h4>
        <ul>
          <li>Windows 11</li>
          <li>macOS 13.0</li>
          <li>Ubuntu 22.04 LTS</li>
        </ul>
      </section>
      <section aria-labelledby="memory-1" id="section-memory-1">
        <h4 id="memory-1">Memory</h4>
        <p>16GB RAM or higher</p>
      </section>
      <section aria-labelledby="storage-1" id="section-storage-1">
        <h4 id="storage-1">Storage</h4>
        <p>5GB available disk space</p>
      </section>
      <section aria-labelledby="processor" id="section-processor">
        <h4 id="processor">Processor</h4>
        <p>Multi-core processor (4+ cores recommended)</p>
      </section>
    </section>
  </section>
  <section aria-labelledby="installation-guide" id="section-installation-guide">
    <h2 id="installation-guide">Installation Guide</h2>
    <section aria-labelledby="prerequisites" id="section-prerequisites">
      <h3 id="prerequisites">Prerequisites</h3>
      <section aria-labelledby="software-dependencies" id="section-software-dependencies">
        <h4 id="software-dependencies">Software Dependencies</h4>
        <ul>
          <li>Node.js version 18.0 or higher</li>
          <li>PostgreSQL 14.0 or higher</li>
          <li>Redis 6.2 or higher</li>
          <li>Docker (optional but recommended)</li>
        </ul>
      </section>
      <section aria-labelledby="environment-setup" id="section-environment-setup">
        <h4 id="environment-setup">Environment Setup</h4>
        <section aria-labelledby="development" id="section-development">
          <h5 id="development">Development</h5>
          <p>Set NODE_ENV=development in your environment variables</p>
        </section>
        <section aria-labelledby="production" id="section-production">
          <h5 id="production">Production</h5>
          <p>Configure SSL certificates and set NODE_ENV=production</p>
        </section>
        <section aria-labelledby="database" id="section-database">
          <h5 id="database">Database</h5>
          <p>Create a new PostgreSQL database named &#39;taskflow_db&#39;</p>
        </section>
      </section>
    </section>
    <section aria-labelledby="installation-steps" id="section-installation-steps">
      <h3 id="installation-steps">Installation Steps</h3>
      <section aria-labelledby="step-1" id="section-step-1">
        <h4 id="step-1">Clone the Repository</h4>
        <p><strong>Command:</strong> git clone <a href="https://github.com/taskflow/taskflow-api.git" title="GitHub repository for TaskFlow Pro API">https://github.com/taskflow/taskflow-api.git</a></p>
        <p>Download the latest version from our GitHub repository</p>
      </section>
      <section aria-labelledby="step-2" id="section-step-2">
        <h4 id="step-2">Install Dependencies</h4>
        <p><strong>Command:</strong> npm install --production</p>
        <p>Install all required Node.js packages and dependencies</p>
      </section>
      <section aria-labelledby="step-3" id="section-step-3">
        <h4 id="step-3">Configure Environment</h4>
        <p>Copy <code>.env.example</code> to <code>.env</code> and configure your database credentials</p>
        <ul>
          <li>.env.example</li>
          <li>.env.production</li>
        </ul>
      </section>
      <section aria-labelledby="step-4" id="section-step-4">
        <h4 id="step-4">Database Migration</h4>
        <p><strong>Command:</strong> npm run migrate:latest</p>
        <p>Set up database tables and initial schema</p>
      </section>
      <section aria-labelledby="step-5" id="section-step-5">
        <h4 id="step-5">Start the Application</h4>
        <p><strong>Command:</strong> npm start</p>
        <p>Launch the API server on default port 3000</p>
      </section>
    </section>
  </section>
  <section aria-labelledby="api-endpoints" id="section-api-endpoints">
    <h2 id="api-endpoints">API Endpoints</h2>
    <section aria-labelledby="authentication" id="section-authentication">
      <h3 id="authentication">Authentication</h3>
      <section aria-labelledby="login" id="section-login">
        <h4 id="login">Login</h4>
        <p><strong>Method:</strong> POST</p>
        <p><strong>Endpoint:</strong> /api/v2/auth/login</p>
        <p>Authenticate user and receive JWT token</p>
        <section aria-labelledby="required-fields-login" id="section-required-fields-login">
          <h5 id="required-fields-login">Required Fields</h5>
          <ul>
            <li>email</li>
            <li>password</li>
          </ul>
        </section>
        <p><strong>Response Format:</strong> JSON with access_token and user_info</p>
      </section>
      <section aria-labelledby="register" id="section-register">
        <h4 id="register">Register</h4>
        <p><strong>Method:</strong> POST</p>
        <p><strong>Endpoint:</strong> /api/v2/auth/register</p>
        <p>Create new user account</p>
        <section aria-labelledby="required-fields-register" id="section-required-fields-register">
          <h5 id="required-fields-register">Required Fields</h5>
          <ul>
            <li>email</li>
            <li>password</li>
            <li>first_name</li>
            <li>last_name</li>
          </ul>
        </section>
        <section aria-labelledby="optional-fields-register" id="section-optional-fields-register">
          <h5 id="optional-fields-register">Optional Fields</h5>
          <ul>
            <li>company</li>
            <li>phone</li>
          </ul>
        </section>
      </section>
    </section>
    <section aria-labelledby="project-management" id="section-project-management">
      <h3 id="project-management">Project Management</h3>
      <section aria-labelledby="create-project" id="section-create-project">
        <h4 id="create-project">Create Project</h4>
        <p><strong>Method:</strong> POST</p>
        <p><strong>Endpoint:</strong> /api/v2/projects</p>
        <p>Create a new project with initial settings</p>
        <section aria-labelledby="required-fields-create-project" id="section-required-fields-create-project">
          <h5 id="required-fields-create-project">Required Fields</h5>
          <ul>
            <li>name</li>
            <li>description</li>
            <li>start_date</li>
          </ul>
        </section>
        <section aria-labelledby="optional-fields-create-project" id="section-optional-fields-create-project">
          <h5 id="optional-fields-create-project">Optional Fields</h5>
          <ul>
            <li>end_date</li>
            <li>budget</li>
            <li>team_members</li>
          </ul>
        </section>
      </section>
      <section aria-labelledby="list-projects" id="section-list-projects">
        <h4 id="list-projects">List Projects</h4>
        <p><strong>Method:</strong> GET</p>
        <p><strong>Endpoint:</strong> /api/v2/projects</p>
        <p>Retrieve all projects for authenticated user</p>
        <section aria-labelledby="query-parameters-list-projects" id="section-query-parameters-list-projects">
          <h5 id="query-parameters-list-projects">Query Parameters</h5>
          <ul>
            <li>status</li>
            <li>sort_by</li>
            <li>limit</li>
            <li>offset</li>
          </ul>
        </section>
        <section aria-labelledby="filters-list-projects" id="section-filters-list-projects">
          <h5 id="filters-list-projects">Filters</h5>
          <ul>
            <li>active</li>
            <li>completed</li>
            <li>archived</li>
            <li>on_hold</li>
          </ul>
        </section>
      </section>
      <section aria-labelledby="update-project" id="section-update-project">
        <h4 id="update-project">Update Project</h4>
        <p><strong>Method:</strong> PUT</p>
        <p><strong>Endpoint:</strong> /api/v2/projects/{project_id}</p>
        <p>Update existing project details</p>
        <section aria-labelledby="updatable-fields-update-project" id="section-updatable-fields-update-project">
          <h5 id="updatable-fields-update-project">Updatable Fields</h5>
          <ul>
            <li>name</li>
            <li>description</li>
            <li>status</li>
            <li>budget</li>
            <li>end_date</li>
          </ul>
        </section>
      </section>
    </section>
    <section aria-labelledby="task-management" id="section-task-management">
      <h3 id="task-management">Task Management</h3>
      <section aria-labelledby="create-task" id="section-create-task">
        <h4 id="create-task">Create Task</h4>
        <p><strong>Method:</strong> POST</p>
        <p><strong>Endpoint:</strong> /api/v2/projects/{project_id}/tasks</p>
        <p>Add new task to specified project</p>
        <section aria-labelledby="required-fields-create-task" id="section-required-fields-create-task">
          <h5 id="required-fields-create-task">Required Fields</h5>
          <ul>
            <li>title</li>
            <li>description</li>
            <li>priority</li>
          </ul>
        </section>
        <section aria-labelledby="priority-levels-create-task" id="section-priority-levels-create-task">
          <h5 id="priority-levels-create-task">Priority Levels</h5>
          <ul>
            <li>low</li>
            <li>medium</li>
            <li>high</li>
            <li>urgent</li>
          </ul>
        </section>
      </section>
      <section aria-labelledby="assign-task" id="section-assign-task">
        <h4 id="assign-task">Assign Task</h4>
        <p><strong>Method:</strong> PATCH</p>
        <p><strong>Endpoint:</strong> /api/v2/tasks/{task_id}/assign</p>
        <p>Assign task to team member</p>
        <section aria-labelledby="required-fields-assign-task" id="section-required-fields-assign-task">
          <h5 id="required-fields-assign-task">Required Fields</h5>
          <ul>
            <li>assignee_id</li>
            <li>due_date</li>
          </ul>
        </section>
        <p><em>Automatic email notification sent to assignee</em></p>
      </section>
    </section>
  </section>
  <section aria-labelledby="configuration-options" id="section-configuration-options">
    <h2 id="configuration-options">Configuration Options</h2>
    <section aria-labelledby="database-settings" id="section-database-settings">
      <h3 id="database-settings">Database Settings</h3>
      <section aria-labelledby="connection-pool" id="section-connection-pool">
        <h4 id="connection-pool">Connection Pool</h4>
        <p><strong>Min Connections:</strong> 5</p>
        <p><strong>Max Connections:</strong> 20</p>
        <p><strong>Idle Timeout:</strong> 30 seconds</p>
      </section>
      <section aria-labelledby="backup-settings" id="section-backup-settings">
        <h4 id="backup-settings">Backup Settings</h4>
        <p><strong>Automatic Backup:</strong> <strong>true</strong></p>
        <p><strong>Backup Frequency:</strong> Daily at 2:00 AM UTC</p>
        <p><strong>Retention Period:</strong> 30 days</p>
        <p><strong>Backup Location:</strong> AWS S3 bucket or local storage</p>
      </section>
    </section>
    <section aria-labelledby="security-configuration" id="section-security-configuration">
      <h3 id="security-configuration">Security Configuration</h3>
      <section aria-labelledby="jwt-settings" id="section-jwt-settings">
        <h4 id="jwt-settings">JWT Settings</h4>
        <p><strong>Token Expiry:</strong> 24 hours</p>
        <p><strong>Refresh Token Expiry:</strong> 7 days</p>
        <p><strong>Algorithm:</strong> HS256</p>
      </section>
      <section aria-labelledby="rate-limiting" id="section-rate-limiting">
        <h4 id="rate-limiting">Rate Limiting</h4>
        <p><strong>Requests Per Minute:</strong> 100</p>
        <p><strong>Burst Limit:</strong> 200</p>
        <p><strong>Blocked Duration:</strong> 15 minutes</p>
      </section>
      <section aria-labelledby="cors-settings" id="section-cors-settings">
        <h4 id="cors-settings">CORS Settings</h4>
        <section aria-labelledby="allowed-origins" id="section-allowed-origins">
          <h5 id="allowed-origins">Allowed Origins</h5>
          <ul>
            <li><a href="https://app.taskflow.com" title="Allowed origin https://app.taskflow.com">https://app.taskflow.com</a></li>
            <li><a href="https://admin.taskflow.com" title="Allowed origin https://admin.taskflow.com">https://admin.taskflow.com</a></li>
          </ul>
        </section>
        <section aria-labelledby="allowed-methods" id="section-allowed-methods">
          <h5 id="allowed-methods">Allowed Methods</h5>
          <ul>
            <li>GET</li>
            <li>POST</li>
            <li>PUT</li>
            <li>DELETE</li>
            <li>PATCH</li>
          </ul>
        </section>
        <p><strong>Credentials:</strong> true</p>
      </section>
    </section>
  </section>
  <section aria-labelledby="troubleshooting" id="section-troubleshooting">
    <h2 id="troubleshooting">Troubleshooting</h2>
    <section aria-labelledby="common-issues" id="section-common-issues">
      <h3 id="common-issues">Common Issues</h3>
      <section aria-labelledby="database-connection-failed" id="section-database-connection-failed">
        <h4 id="database-connection-failed">Database Connection Failed</h4>
        <section aria-labelledby="symptoms-database-connection-failed" id="section-symptoms-database-connection-failed">
          <h5 id="symptoms-database-connection-failed">Symptoms</h5>
          <ul>
            <li>Connection timeout errors</li>
            <li>Unable to connect to database</li>
          </ul>
        </section>
        <section aria-labelledby="solutions-database-connection-failed" id="section-solutions-database-connection-failed">
          <h5 id="solutions-database-connection-failed">Solutions</h5>
          <ul>
            <li>Verify database credentials in .env file</li>
            <li>Check if PostgreSQL service is running</li>
            <li>Ensure database exists and user has proper permissions</li>
            <li>Test connection using psql command line tool</li>
          </ul>
        </section>
      </section>
      <section aria-labelledby="authentication-errors" id="section-authentication-errors">
        <h4 id="authentication-errors">Authentication Errors</h4>
        <section aria-labelledby="symptoms-authentication-errors" id="section-symptoms-authentication-errors">
          <h5 id="symptoms-authentication-errors">Symptoms</h5>
          <ul>
            <li>401 Unauthorized responses</li>
            <li>Invalid token errors</li>
          </ul>
        </section>
        <section aria-labelledby="solutions-authentication-errors" id="section-solutions-authentication-errors">
          <h5 id="solutions-authentication-errors">Solutions</h5>
          <ul>
            <li>Check JWT secret key configuration</li>
            <li>Verify token hasn&#39;t expired</li>
            <li>Ensure proper Authorization header format</li>
            <li>Clear browser cache and cookies</li>
          </ul>
        </section>
      </section>
      <section aria-labelledby="performance-issues" id="section-performance-issues">
        <h4 id="performance-issues">Performance Issues</h4>
        <section aria-labelledby="symptoms-performance-issues" id="section-symptoms-performance-issues">
          <h5 id="symptoms-performance-issues">Symptoms</h5>
          <ul>
            <li>Slow API responses</li>
            <li>High memory usage</li>
            <li>Timeout errors</li>
          </ul>
        </section>
        <section aria-labelledby="solutions-performance-issues" id="section-solutions-performance-issues">
          <h5 id="solutions-performance-issues">Solutions</h5>
          <ul>
            <li>Enable database query optimization</li>
            <li>Implement Redis caching for frequent queries</li>
            <li>Monitor and optimize database indexes</li>
            <li>Scale horizontally with load balancer</li>
          </ul>
        </section>
      </section>
    </section>
  </section>
  <section aria-labelledby="support-resources" id="section-support-resources">
    <h2 id="support-resources">Support Resources</h2>
    <section aria-labelledby="documentation-links" id="section-documentation-links">
      <h3 id="documentation-links">Documentation Links</h3>
      <ul>
        <li><a href="https://docs.taskflow.com/api-reference" title="API Reference Documentation">https://docs.taskflow.com/api-reference</a></li>
        <li><a href="https://docs.taskflow.com/getting-started" title="Getting Started Documentation">https://docs.taskflow.com/getting-started</a></li>
        <li><a href="https://docs.taskflow.com/best-practices" title="Best Practices Documentation">https://docs.taskflow.com/best-practices</a></li>
      </ul>
    </section>
    <section aria-labelledby="community-support" id="section-community-support">
      <h3 id="community-support">Community Support</h3>
      <ul>
        <li>GitHub Issues: <a href="https://github.com/taskflow/taskflow-api/issues" title="GitHub Issues for TaskFlow API">https://github.com/taskflow/taskflow-api/issues</a></li>
        <li>Discord Community: <a href="https://discord.gg/taskflow" title="Discord Community for TaskFlow">https://discord.gg/taskflow</a></li>
        <li>Stack Overflow tag: taskflow-api</li>
      </ul>
    </section>
    <section aria-labelledby="contact-information" id="section-contact-information">
      <h3 id="contact-information">Contact Information</h3>
      <p><strong>Technical Support:</strong> <a href="mailto:support@taskflow.com" title="Email Technical Support">support@taskflow.com</a></p>
      <p><strong>Sales Inquiries:</strong> <a href="mailto:sales@taskflow.com" title="Email Sales Inquiries">sales@taskflow.com</a></p>
      <p><strong>Business Hours:</strong> Monday-Friday, 9:00 AM - 6:00 PM EST</p>
    </section>
  </section>
</article>
</body>
</html>